package com.sgs.carbon.web.modules.common.convert.dict;

import com.sgs.carbon.common.pojo.PageResult;
import com.sgs.carbon.web.modules.common.controller.dict.vo.type.SysDictTypeCreateReqVO;
import com.sgs.carbon.web.modules.common.controller.dict.vo.type.SysDictTypeExcelVO;
import com.sgs.carbon.web.modules.common.controller.dict.vo.type.SysDictTypeRespVO;
import com.sgs.carbon.web.modules.common.controller.dict.vo.type.SysDictTypeSimpleRespVO;
import com.sgs.carbon.web.modules.common.controller.dict.vo.type.SysDictTypeUpdateReqVO;
import com.sgs.carbon.web.modules.common.dal.dataobject.dict.SysDictTypeDO;
import org.mapstruct.Mapper;
import org.mapstruct.factory.Mappers;

import java.util.List;

/**
 * @see <a href="https://github.com/mapstruct/mapstruct"><b>mapstruct</b></a>
 *
 * @author Dave Liu
 * @date 2021-10-07
 */
@Mapper
public interface SysDictTypeConvert {

    SysDictTypeConvert INSTANCE = Mappers.getMapper(SysDictTypeConvert.class);

    PageResult<SysDictTypeRespVO> convertPage(PageResult<SysDictTypeDO> bean);

    SysDictTypeRespVO convert(SysDictTypeDO bean);

    SysDictTypeDO convert(SysDictTypeCreateReqVO bean);

    SysDictTypeDO convert(SysDictTypeUpdateReqVO bean);

    List<SysDictTypeSimpleRespVO> convertList(List<SysDictTypeDO> list);

    List<SysDictTypeExcelVO> convertList02(List<SysDictTypeDO> list);

}
